home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / prog / atari / c / nos042_s / socket.h < prev    next >
C/C++ Source or Header  |  1994-09-16  |  5KB  |  153 lines

  1. /****************************************************************************
  2. *    $Id: socket.h 1.3 93/03/07 16:34:01 ROOT_DOS Exp $
  3. *    24 Aug 92    1.2        GT    Add "time" port.                                *
  4. *    24 Oct 92    1.3        GT    rexec, rlogin and rsh ports.                    *
  5. *
  6. *  ATARI Version by David Nash - dnash@chaos.demon.co.uk
  7. *
  8. *  Add 100 to all error numbers to prevent conflict with Lattice C
  9. *
  10. ****************************************************************************/
  11.  
  12. #ifndef    _SOCKET_H
  13. #define    _SOCKET_H
  14.  
  15. #ifndef    _GLOBAL_H
  16. #include "global.h"
  17. #endif
  18.  
  19. #ifdef    ANSIPROTO
  20. #include <stdarg.h>
  21. #endif
  22.  
  23. #ifndef    _MBUF_H
  24. #include "mbuf.h"
  25. #endif
  26.  
  27. #ifndef _PROC_H
  28. #include "proc.h"
  29. #endif
  30.  
  31. #ifndef _SOCKADDR_H
  32. #include "sockaddr.h"
  33. #endif
  34.  
  35. /* Local IP wildcard address */
  36. #define    INADDR_ANY    0x0L
  37.  
  38. /* IP protocol numbers */
  39. /* now in internet.h */
  40.  
  41. /* TCP port numbers */
  42. #define    IPPORT_ECHO        7    /* Echo data port */
  43. #define    IPPORT_DISCARD    9    /* Discard data port */
  44. #define    IPPORT_FTPD        20    /* FTP Data port */
  45. #define    IPPORT_FTP        21    /* FTP Control port */
  46. #define IPPORT_TELNET    23    /* Telnet port */
  47. #define IPPORT_SMTP        25    /* Mail port */
  48. #define    IPPORT_TIME        37    /* Time port */
  49. #define    IPPORT_FINGER    79    /* Finger port */
  50. #define    IPPORT_TTYLINK    87    /* Chat port */
  51. #define IPPORT_POP        109    /* pop2 port */
  52. #define    IPPORT_NNTP        119    /* Netnews port */
  53. #define    IPPORT_REXEC    512    /* rexec        */
  54. #define    IPPORT_RLOGIN    513    /* rlogin        */
  55. #define    IPPORT_RSH        514    /* rsh            */
  56.  
  57. /* UDP port numbers */
  58. #define    IPPORT_DOMAIN    53
  59. #define    IPPORT_BOOTPS    67
  60. #define    IPPORT_BOOTPC    68
  61. #define    IPPORT_RIP    520
  62. #define    IPPORT_REMOTE    1234    /* Pulled out of the air */
  63.  
  64. #define    AF_INET        0
  65. #define    AF_AX25        1
  66. #define AF_NETROM    2
  67. #define    AF_LOCAL    3
  68.  
  69. #define    SOCK_STREAM    0
  70. #define    SOCK_DGRAM    1
  71. #define    SOCK_RAW    2
  72. #define SOCK_SEQPACKET    3
  73.  
  74. /* Socket flag values - controls newline mapping */
  75. #define    SOCK_BINARY    0    /* socket in raw (binary) mode */
  76. #define    SOCK_ASCII    1    /* socket in cooked (newline mapping) mode */
  77. #define    SOCK_QUERY    2    /* Return setting without change */
  78.  
  79. #ifndef ATARI
  80. #define    EMFILE                101
  81. #define    EBADF                    102
  82. #define    EINVAL                103
  83. #define    EINTR                    113
  84. #define    ENOMEM                115
  85. #define    EFAULT                107
  86. #endif
  87.  
  88. #define    ESOCKTNOSUPPORT    104
  89. #define    EAFNOSUPPORT        105
  90. #define    EOPNOTSUPP            106
  91. #define    ENOTCONN                108
  92. #define    ECONNREFUSED        109
  93. #define     EAFNOSUPP            110
  94. #define    EISCONN                111
  95. #define    EWOULDBLOCK            112
  96. #define    EADDRINUSE            114
  97. #define     EMSGSIZE                116
  98. #define    EALARM                117
  99. #define    EABORT                118
  100.  
  101.  
  102. /* In socket.c: */
  103. extern int Axi_sock;    /* Socket listening to AX25 (there can be only one) */
  104.  
  105. int accept __ARGS((int s,char *peername,int *peernamelen));
  106. int bind __ARGS((int s,char *name,int namelen));
  107. int close_s __ARGS((int s));
  108. int connect __ARGS((int s,char *peername,int peernamelen));
  109. void freesock __ARGS((struct proc *pp));
  110. int getpeername __ARGS((int s,char *peername,int *peernamelen));
  111. int getsockname __ARGS((int s,char *name,int *namelen));
  112. int listen __ARGS((int s,int backlog));
  113. int recv_mbuf __ARGS((int s,struct mbuf **bpp,int flags,char *from,int *fromlen));
  114. int send_mbuf __ARGS((int s,struct mbuf *bp,int flags,char *to,int tolen));
  115. int setflush __ARGS((int s,int c));
  116. int shutdown __ARGS((int s,int how));
  117. int socket __ARGS((int af,int type,int protocol));
  118. void sockinit __ARGS((void));
  119. int sockkick __ARGS((int s));
  120. int socklen __ARGS((int s,int rtx));
  121. struct proc *sockowner __ARGS((int s,struct proc *newowner));
  122. int usesock __ARGS((int s));
  123. int socketpair __ARGS((int af,int type,int protocol,int sv[]));
  124.  
  125. /* In sockuser.c: */
  126. void flushsocks __ARGS((void));
  127. int keywait __ARGS((char *prompt,int flush));
  128. int recv __ARGS((int s,char *buf,int len,int flags));
  129. int recvchar __ARGS((int s));
  130. int recvfrom __ARGS((int s,char *buf,int len,int flags,char *from,int *fromlen));
  131. int recvline __ARGS((int s,char *buf,unsigned len));
  132. int rrecvchar __ARGS((int s));
  133. int send __ARGS((int s,char *buf,int len,int flags));
  134. int sendto __ARGS((int s,char *buf,int len,int flags,char *to,int tolen));
  135. int seteol __ARGS((int s,char *seq));
  136. int sockmode __ARGS((int s,int mode));
  137. void tflush __ARGS((void));
  138. int tprintf __ARGS((char *fmt,...));
  139. int tputc __ARGS((char c));
  140. int tputs __ARGS((char *s));
  141. int usflush __ARGS((int s));
  142. int usprintf __ARGS((int s,char *fmt,...));
  143. int usputc __ARGS((int s,char c));
  144. int usputs __ARGS((int s,char *x));
  145. int usvprintf __ARGS((int s,char *fmt, va_list args));
  146.  
  147. /* In file sockutil.c: */
  148. char *psocket __ARGS((void *p));
  149. char *sockerr __ARGS((int s));
  150. char *sockstate __ARGS((int s));
  151.  
  152. #endif    /* _SOCKET_H */
  153.